Семейство библиотек clang предоставляет разработчикам широчайшие возможности по реализации различных инструментов, основанных на разборе и анализе абстрактного синтаксического дерева (AST). В частности, авторы clang выпускают такой инструмент, как clang-tidy, который является мощным статическим анализатором кода. Мы разберемся, как этот инструмент применить в процессе разработки для С++ и как дополнить его собственными проверками. Попутно разберемся с некоторыми занимательными особенностями AST для С++.
clang library family provides wides possibilities to implement various tools based on parsing and analysis of Abstract Syntax Tree (AST). Particularly, clang authors released a tool called clang-tidy, a powerful static code analyzer. The talk covers a way to make use of this tool in the process of C++ development and how to enrich this tool with your own checks. On a side note, we will take a deep look into C++ AST.